perm filename INDUST[W85,JMC] blob sn#787264 filedate 1985-02-26 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	indust[w85,jmc]		1985-86 Industrial Lecturers
C00008 ENDMK
CāŠ—;
indust[w85,jmc]		1985-86 Industrial Lecturers

309. Industrial Lectureships in Computer Science ---
Each quarter the Computer Science Department invites one outstanding computer
scientist from the local industry to give a course in his or her
specialty. These courses (309A,B,C) are ordinarily given only once.
Lecturers and topics change from year to year, hence courses with this
number may be taken repeatedly.

The lecturers for 1985-86 are as follows:

Fall: Fernando Pereira of SRI International.  His work in Portugal,
UK and now at SRI is well described by the course he is giving.

Winter: John Williams of the IBM Research Laboratory in San Jose.
He has collaborated with John Backus in developing ``functional
programming'' about which he will lecture.

Spring: Daniel Bobrow et. al.  The Xerox Palo Alto Research Center
has been active in AI, and one of their major areas of activity
has been AI languages.  The approach taken by this group is
distinct from that of the other PARC emphasis on object oriented
programming as in Smalltalk.

309A. Prolog and Natural Language Analysis ---
Introduces the logic programming language Prolog as a tool for
natural language analysis and related topics in artificial
intelligence, through a progression of natural language analysis
examples. No previous experience with logic programming or natural
language analysis is required.  The following topics will be
discussed: representing context-free grammars in Prolog; definite
clause grammars; the logical variable; difference lists; top-down
parsing and the Prolog execution model; syntactic analysis of complex
constructions; semantic translation rules and logical form; general
computations in grammars; structure manipulation and multistage
analysis; operations on logical forms; deductive question-answering in
Prolog; metalevel computation and the embedding grammar formalisms in
Prolog; extralogical operations; implementation of alternative parsing
algorithms; the organization of a natural-language question-answering
system.  Examples will be available as running Prolog programs and
will be used for exercises.  Prerequisites: elementary notions of
logic, formal language theory, and symbolic computation.

	3 units, Aut (Pereira)

309B. Functional Programming -- Current research topics in the design and
implementation of functional programming languages, including formal
semantic models, rewriting rules and the algebra of programs, abstract
data types, program transformations, infinite sequences, and the use of
stream-valued stream functions to accommodate persistent memory and
interactive input/output.  The particular language FP will be studied in
depth, with examples drawn from other functional languages such as SASL,
ML, KRC, and Hope.  Prerequisite: a graduate-level course in programming
languages.

	3 units, Win (Williams)

390C.  Programming Languages for AI Systems.---The
design of programming languages to provide computational
mechanisms for AI research and expert systems.  Topics include
object-oriented and access-oriented programming; logic programming;
unification algorithms;  representation of dependencies, contexts and
layers; representations of assumptions; algorithms for truth
maintenance; constraints; meta-circular interpreters; architectures
for reflection.  Prerequisites: Working familiarity with LISP.  Bobrow,
de Kleer, Kahn, Mittal, and Stefik.  (Spring 1986.)

	3 units, Spr (Bobrow, de Kleer, Kahn, Mittel, Stefik)